#include <iostream>

#include "Serial.h"
#include "commom.h"
#include "log.h"

Serial s;  // 全局变量, 串口类

// 与飞控数据收发变量
float rx_msg[10];
int rx_msg_type;
int rx_msg_l;

float tx_msg[10];
int tx_msg_type;
int tx_msg_l;

int main() {
  // 打开与飞控控制的通信接口
  // open 第一个参数根据使用的板卡的串口决定
  if (s.open("/dev/ttyAMA0", 115200, 8, Serial::PARITY_NONE, 1) != Serial::OK) {
    printf("Cannot open serial port ttyAMA0 (pi4 飞控 控制信息)!\n");
    return -1;
  }

  for (;;)  // 任务循环
  {
    if (uart_receive(s, rx_msg_type, rx_msg, rx_msg_l)) {
      logrxmsg("rx_msg_type rx_msg_l rx_msg1-10: "
               << rx_msg_type << " " << rx_msg_l << " " << rx_msg[0] << " "
               << rx_msg[1] << " " << rx_msg[2] << " " << rx_msg[3] << rx_msg[4]
               << rx_msg[5] << rx_msg[6] << rx_msg[7] << rx_msg[8] << rx_msg[9]
               << endl);
    }
  }
  /* 发送起飞指令 example
    tx_msg[0] = 1.3;
        tx_msg_l = 1;
        tx_msg_type = ACFLY_TAKEOFF;
        uart_send(s, tx_msg_type, tx_msg, tx_msg_l);
        uart_send(s, tx_msg_type, tx_msg, tx_msg_l);
  */
}